Cycle Deployment Topology

Considering optimal usage of JVM and coherence resources, customer should have at-least 2 Cycle JVMs per cluster. Ideal would be to have 4 Cycle JVMs per coherence cluster or more depending on the workload and processing needs. The coherence cluster must be running across machines with equal distribution of Cycle Agent Nodes. The cycle agents must be deployed in 2 cycle agents per machine configuration. This has nothing to do with cycle, but more over to do with coherence cluster management and appropriate resource handling with in coherence nodes with respect to network resources.

When 2 Cycle JVMs run per machine, the cpu and memory resources are optimally managed, there is less network communication between nodes deployed on same machine. In case you are running other JVMs, such as OIPA, AdminConsole, ServiceLayer then that must run on a separate machine, especially PAS (OIPA JVMs), since that leverages coherence cluster as well.

Generally dedicated machines must be used to run cycle as batch processing or coherence grid processing tends to steal all the available resources on the server, where it is deployed. Non-coherence components such as AdminConsole, PaletteConfig, Cycle Client can ideally run on the same machine as cycle, as far as machines have enough cpu and memory to sustain all running apps and components.

When deciding on Cluster configuration for Cycle and OIPA (PASJava). Ensure Cycle Coherence Clusters are independent of OIPA Coherence Clusters. The reason for segregating OIPA and Cycle in its own cluster is due to the nature of operations and transactions that are performed by Cycle and OIPA. This segregation of concerns is important to avoid any resource conflicts, starvation and resource stealing between two high computing engines.